//
//  YPWmcError.swift
//  YPWatermarkCamera
//
//  Created by 赵新 on 2022/6/10.
//

import UIKit

public extension YPWmcError {
    /// 错误类型
    enum ErrorType {
        /// 网络错误，
        /// 一般为无网络、网络权限异常等
        case networkError

        /// 服务器错误，
        /// 一般为服务器宕机、服务器访问出现异常等
        case serviceError

        /// 请求错误，
        /// 一般为参数、请求超时、请求方式/类型异常等
        case requestError

        /// 解析错误，
        /// 一般为请求成功，但是可能存在数据结构变更导致数据反序列化异常等
        case parsingError

        /// 数据库错误，
        /// 一般为数据库的增删改查操作错误、数据库线程阻塞等
        case dataBaseError

        /// 使用错误，
        /// 不符合代码/业务逻辑、使用异常等
        case actionError
    }
}

// MARK: - [YPWmcError]

public struct YPWmcError: Error {
    /// 错误类型
    public var errorType: ErrorType

    /// 具体的错误信息
    public var info: String
}
